package com.ruoyi.smart.mapper;

import java.util.List;
import com.ruoyi.smart.domain.SmartProductTest;
import com.ruoyi.smart.domain.SmartProductTestWaveform;

/**
 * 产品测试Mapper接口
 * 
 * @author minwei
 * @date 2022-06-20
 */
public interface SmartProductTestMapper 
{
    /**
     * 查询产品测试
     * 
     * @param id 产品测试主键
     * @return 产品测试
     */
    public SmartProductTest selectSmartProductTestById(Long id);

    /**
     * 查询产品测试列表
     * 
     * @param smartProductTest 产品测试
     * @return 产品测试集合
     */
    public List<SmartProductTest> selectSmartProductTestList(SmartProductTest smartProductTest);

    /**
     * 新增产品测试
     * 
     * @param smartProductTest 产品测试
     * @return 结果
     */
    public int insertSmartProductTest(SmartProductTest smartProductTest);

    /**
     * 修改产品测试
     * 
     * @param smartProductTest 产品测试
     * @return 结果
     */
    public int updateSmartProductTest(SmartProductTest smartProductTest);

    /**
     * 删除产品测试
     * 
     * @param id 产品测试主键
     * @return 结果
     */
    public int deleteSmartProductTestById(Long id);

    /**
     * 批量删除产品测试
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSmartProductTestByIds(Long[] ids);

    /**
     * 批量删除产品波形数据
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteSmartProductTestWaveformByProductTestIds(Long[] ids);
    
    /**
     * 批量新增产品波形数据
     * 
     * @param smartProductTestWaveformList 产品波形数据列表
     * @return 结果
     */
    public int batchSmartProductTestWaveform(List<SmartProductTestWaveform> smartProductTestWaveformList);
    

    /**
     * 通过产品测试主键删除产品波形数据信息
     * 
     * @param id 产品测试ID
     * @return 结果
     */
    public int deleteSmartProductTestWaveformByProductTestId(Long id);
}
